package job._20240321meituan;

import java.util.ArrayList;
import java.util.List;

/**
 * @Project : algorithm-learning-java
 * @Author : Ruoyu Wang
 * @User : Momenta
 * @DateTime : 2024/3/21 12:37
 */
public class Q1 {
    static int[] nums;
    static List<List<Integer>> res = new ArrayList<>();
    static List<Integer> tmp = new ArrayList<>();

    static void dfs(int u, int k) {
        if (k > nums.length) return;
        res.add(new ArrayList<>(tmp));
        for (int i = u; i < nums.length; i++) {
            tmp.add(nums[i]);
            dfs(i + 1, k + 1);
            tmp.remove(tmp.size() - 1);
        }
    }

    public static void main(String[] args) {
        nums = new int[]{1, 2, 3};
        dfs(0, 0);
        for (int i = 0; i < res.size(); i++) {
            System.out.println(res.get(i));
        }
    }
}
